package com.huike.clues.domain.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.huike.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 字典类型表
 *
 * @TableName sys_dict_type
 */
@Builder
@Data
@TableName("sys_dict_type")
public class SysDictType implements Serializable {

    /**
     * 字典主键
     */
    @NotNull(message = "[字典主键]不能为空")
    @ApiModelProperty("字典主键")
    @Excel(name = "字典主键", cellType = Excel.ColumnType.NUMERIC)
    private Long dictId;
    /**
     * 字典名称
     */
    @Size(max = 100, message = "编码长度不能超过100")
    @ApiModelProperty("字典名称")
    @Excel(name = "字典名称")
    private String dictName;
    /**
     * 字典类型
     */
    @Size(max = 100, message = "编码长度不能超过100")
    @ApiModelProperty("字典类型")
    @Excel(name = "字典类型")
    private String dictType;
    /**
     * 状态（0正常 1停用）
     */
    @ApiModelProperty("状态（0正常 1停用）")
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String status;
    /**
     * 创建者
     */
    @Size(max = 64, message = "编码长度不能超过64")
    @ApiModelProperty("创建者")
    @Excel(name = "创建者")
    private String createBy;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @Excel(name = "创建时间")
    private LocalDateTime createTime;
    /**
     * 更新者
     */
    @Size(max = 64, message = "编码长度不能超过64")
    @ApiModelProperty("更新者")
    @Excel(name = "更新者")
    private String updateBy;
    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @Excel(name = "更新时间")
    private LocalDateTime updateTime;
    /**
     * 备注
     */
    @Size(max = 500, message = "编码长度不能超过500")
    @ApiModelProperty("备注")
    @Excel(name = "备注")
    private String remark;

}
